package cn.xhjava.crm.workbench.service;

import cn.xhjava.crm.workbench.domain.DateDataMapVO;
import cn.xhjava.crm.workbench.domain.FunnelVO;
import cn.xhjava.crm.workbench.domain.Tran;

import java.util.List;
import java.util.Map;

/**
 * @author Xiahu
 * @create 2023/7/19 0019
 */
public interface TranService {
    List<Tran> selectForPage(Map<String, Object> map) throws Exception;

    int selectCountForPage(Map<String, Object> map) throws Exception;

    int delete(String[] ids) throws Exception;

    void add(Map<String, Object> map) throws Exception;

    int update(Tran transaction) throws Exception;

    Tran selectById(String id) throws Exception;

    Tran selectDetailById(String id) throws Exception;

    List<Tran> selectTransactionListByContactsId(String id) throws Exception;

    int deleteById(String transactionId) throws Exception;

    List<Tran> selectTransactionListByCustomerId(String id) throws Exception;

    List<FunnelVO> queryCountOfTranGroupByStage() throws Exception;

    DateDataMapVO queryMoneyCountGroupByCreateTime() throws Exception;
}
